www.gusucode.com > PHP展示型企业网站模板米拓整站源码 1.0PHP源码程序 > PHP展示型企业网站模板米拓整站源码 1.0/MetInfozs_v1.0/MetInfozs_v1.0/app/system/include/function/power.func.php
<?php # MetInfo Enterprise Content Management System # Copyright (C) MetInfo Co.,Ltd (http://www.metinfo.cn). All rights reserved. defined('IN_MET') or exit('No permission'); /** * 获取COOKIE值 * @param string $key 指定键值 * @return string $_M['user']['cookie'][$key] 返回当前管理员或会员的相关COOKIE值 * 例:get_met_cookie('metinfo_admin_name'):返回当前管理员的账号 get_met_cookie('metinfo_member_name'):返回当前会员的账号 get_met_cookie('metinfo_admin_pass'):返回当前管理员的密码 get_met_cookie('metinfo_member_pass'):返回当前会员的密码 */ function get_met_cookie($key){ global $_M; if(defined('IN_ADMIN')){ if($key == 'metinfo_admin_name' || $key == 'metinfo_member_name'){ $val = urldecode($_M['user']['cookie'][$key]); $val = sqlinsert($val); return $val; } return $_M['user']['cookie'][$key]; }else{ $userclass = load::sys_class('user', 'new'); if(!$userclass->get_login_user_info()){ $userclass->login_by_auth($_M['form']['acc_auth'], $_M['form']['acc_key']); } $m = $userclass->get_login_user_info(); $m['metinfo_admin_name'] = $m['username']; $m['metinfo_member_name'] = $m['username']; $m['metinfo_member_id'] = $m['id']; $m['metinfo_admin_id'] = $m['id']; $m['metinfo_admin_pass'] = $m['password']; $m['metinfo_member_pass'] = $m['password']; if($key == 'metinfo_admin_name' || $key == 'metinfo_member_name'){ $val = urldecode($m[$key]); $val = sqlinsert($val); return $val; } return $m[$key]; } } /** * 判断COOKIE是否超过一个小时,如果没有超过则更新$_M['user']['cookie']中的信息 */ function met_cooike_start(){ global $_M; $_M['user']['cookie'] = array(); $met_webkeys = $_M['config']['met_webkeys']; list($username, $password) = explode("\t",authcode($_M['form']['met_auth'], 'DECODE', $met_webkeys.$_COOKIE['met_key'])); $username=sqlinsert($username); $query = "SELECT * from {$_M['table']['admin_table']} WHERE admin_id = '{$username}'"; $user = DB::get_one($query); $usercooike = json_decode($user['cookie']); if(md5($user['admin_pass']) == $password && time()-$usercooike->time<3600){ foreach($usercooike as $key=>$val){ $_M['user']['cookie'][$key] = $val; } if(defined('IN_ADMIN')){ $_M['user']['admin_name'] = get_met_cookie('metinfo_admin_name'); $_M['user']['admin_id'] = $_M['user']['cookie']['metinfo_admin_id']; $privilege = background_privilege(); $_M['user']['langok'] = $privilege['langok']; } $_M['user']['cookie']['time'] = time(); $json = json_encode($_M['user']['cookie']); $query = "update {$_M['table']['admin_table']} set cookie = '{$json}' WHERE admin_id = '{$username}'"; $user = DB::query($query); } } /** * 清除COOKIE * @param int $userid 用户ID */ function met_cooike_unset($userid){ global $_M; $met_admin_table = $_M['table']['admin_table']; $userid = sqlinsert($userid); $query = "UPDATE {$_M['table']['admin_table']} set cookie = '' WHERE admin_id='{$userid}' AND usertype = '3'"; DB::query($query); met_setcookie("met_auth",'',time()-3600); met_setcookie("met_key",'',time()-3600); met_setcookie("appsynchronous",0,time()-3600,''); unset($_M['user']['cookie']); } # This program is an open source system, commercial use, please consciously to purchase commercial license. # Copyright (C) MetInfo Co., Ltd. (http://www.metinfo.cn). All rights reserved. ?>